package worker.model.service;


import java.math.BigDecimal;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;

import worker.model.dao.WipDao;
import worker.model.dao.WorkOrderDao;
import worker.model.vo.DefectsVO;
import worker.model.vo.ItemInfoVO;
import worker.model.vo.ItemVO;
import worker.model.vo.OperationsVO;
import worker.model.vo.WorkOrdersVO;

public class WipService {
	private WipDao wipDao;
	private WorkOrderDao workOrderDao;
	public void setwipDao(WipDao wipDao) {
		this.wipDao = wipDao;
	}
	public void setWorkOrderDao(WorkOrderDao workOrderDao){
		this.workOrderDao=workOrderDao;
	}

	/**
	 * 120526 조철희
	 * wip 메뉴 접속시 ItemInfo 테이블정보를 가져옴
	 */
	public ArrayList<HashMap> getItemInfoList() {
		Object obj = null;
		ArrayList<HashMap> list = null;
		try {
			obj = wipDao.getItemInfoList();
			if(obj!=null){
				list = (ArrayList<HashMap>) obj;
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return list;
	}
	/**
	 * 120527 조철희
	 * wip 메뉴 접속시 Operation 테이블 정보를 가져옴
	 */
	public ArrayList<HashMap> getOperationList() {
		Object obj = null;
		ArrayList<HashMap> list = null;
		try {
			obj = wipDao.getOperationList();
			if(obj!=null){
				list = (ArrayList<HashMap>) obj;
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return list;
	}
	/**
	 * 120527 조철희
	 * wip 메뉴 접속시 Defects 테이블 정보를 가져옴
	 */
	public ArrayList<HashMap> getDefectsList() {
		Object obj = null;
		ArrayList<HashMap> list = null;
		try {
			obj = wipDao.getDefectsList();
			if(obj!=null){
				list = (ArrayList<HashMap>) obj;
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return list;
	}
	/**
	 * 120526 조철희
	 * wip 메뉴에서 Item을 등록하고 리스트를 가져옴
	 */
	public boolean addItemInfo(ItemInfoVO itemVO) {
		boolean flag = true;
		try {
			wipDao.addItemInfo(itemVO);
		} catch (SQLException e) {
			flag = false;
		}
		return flag;
	}
	/**
	 * 120526 조철희
	 * wip 메뉴에서 Operation을 등록하고 리스트를 가져옴
	 */
	public boolean addOperation(OperationsVO opVO) {
		boolean flag = true;
		try {
			wipDao.addOperation(opVO);
		} catch (SQLException e) {
			flag = false;
		}
		return flag;
	}
	/**
	 * 120526 조철희
	 * wip 메뉴에서 Defect를 등록하고 리스트를 가져옴
	 */
	public boolean addDefect(DefectsVO dVO) {
		boolean flag = true;
		try {
			wipDao.addDefect(dVO);
		} catch (SQLException e) {
			flag = false;
		}
		return flag;
	}
	/**
	 * 이주연
	 * 자재 등록 하고, ItemInfo 리스트를 가져옴
	 * @param ivo
	 * @return
	 */
	public void updateMaterial(ItemInfoVO ivo) {
		try {
			this.wipDao.updateMaterial(ivo);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}
